<?php

//comprobar si se esta entrando en la opcion de listado
global $mainframe;
$menu =& new mosMenu( $database );
$menu->load( $Itemid );
$params =& new mosParameters( $menu->params );
$valor = $params->get( 'listar' );

if($valor == "Si"){
	doListar();
	return;
}else{
	switch( $task ) {
		case 'insertar':
			doInsertar();
			break;
		default:
			doForm();
	}
}

function doForm()
{
	?>
    <form method="POST" action="index.php" enctype="multipart/form-data">
    <input type="hidden" name="option" value="com_directorio"> 
    <input type="hidden" name="task" value="insertar">
    <input type="hidden" name="MAX_FILE_SIZE" value="100000">
    <p>
    <label for="nombre">Nombres</label><input type="text" name="nombre" value=""><br/>
    <label for="apellidos">Apellidos: </label><input type="text" name="apellidos" value=""><br/>
    <label for="cedula">Cedula: </label><input type="text" name="cedula" value=""><br/>
    <label for="dia">Fecha de nacimiento: </label>DD<input type="text" name="dia" value="" maxlength="2" size="1">MM<input type="text" name="mes" value="" maxlength="2" size="1">AAAA<input type="text" name="anio" value="" maxlength="4" size="3"><br/>
    <label for="ciudad">Ciudad: </label><input type="text" name="ciudad" value=""><br/>
    <label for="telefono">Tel&eacute;fono: </label><input type="text" name="telefono" value=""><br/>
    <label for="celular">Celular: </label><input type="text" name="celular" value=""><br/>
    <label for="direcccion">Direccion: </label><input type="text" name="direccion" value=""><br/>
    <label for="email">E-mail: </label><input type="text" name="email" value=""><br/>
    <label for="oficina">Tel&eacute;fono oficina: </label><input type="text" name="oficina" value=""><br/>
    <label for="curso">Curso al que asistio en Corea:</label><textarea rows="3" cols="20" name="curso"></textarea><br/>
    <label for="fechacurso">Fecha de realizaci&oacute;n:</label><input type="text" name="fechacurso" value=""><br/>
    <label for="institucion">Instituci&oacute;n que lo realiz&oacute;:</label><input type="text" name="institucion" value=""><br/>
    <label for="foto">Foto: </label><input type="file" name="foto"><br/>
    <label></label><input type="submit" value="Actualizar">
    </p>
    </form>
	<?php
}

function leerParam($nombre){
	return mysql_real_escape_string($_POST[$nombre]);
}

function doInsertar()
{
	global $database;
	$nombre=leerParam('nombre');
	$apellidos=leerParam('apellidos');
	$cedula=leerParam('cedula');
	$dia=leerParam('dia');
	$mes=leerParam('mes');
	$anio=leerParam('anio');
	$ciudad=leerParam('ciudad');
	$telefono=leerParam('telefono');
	$celular=leerParam('celular');
	$direccion=leerParam('direccion');
	$email=leerParam('email');
	$oficina=leerParam('oficina');
	$curso=leerParam('curso');
	$fechacurso=leerParam('fechacurso');
	$institucion=leerParam('institucion');
	
	$tipo_archivo = $_FILES['foto']['type'];
	if($tipo_archivo != "" && !(strpos($tipo_archivo, "gif") || strpos($tipo_archivo, "jpeg") || strpos($tipo_archivo, "png"))){
		echo "<center><b>Tipo de archivo no permitido.</b></center>";
		return;
	}
	else
	{
		if($tipo_archivo != ""){
			$tamano_archivo = $_FILES['foto']['size'];
			$ruta = "uploads/fotos/f_" . $cedula . "_" . time(). ".png";
			//TODO: leer extension
			//compruebo si las características del archivo son las que deseo
		    if ($tamano_archivo > 100000) {
		        echo "<center><b>Solo se permiten archivos de 100k máximo.</b></center>";
		    }else{
		    
				 /*
				 * abrir la imagen subida dependiendo del tipo de archivo
				 */
				switch($_FILES['foto']['type']) {
					case 'image/jpeg':
					case 'image/pjpeg':
						$orig = imagecreatefromjpeg($_FILES['foto']['tmp_name']);
						break;
					case 'image/png':
						$orig = imagecreatefrompng($_FILES['foto']['tmp_name']);
						break;
					case 'image/gif':
						$orig = imagecreatefromgif($_FILES['foto']['tmp_name']);
						break;
					default:
						echo "<center><b>Tipo de archivo no permitido.</b></center>";
						return;
				}

				if($orig) {
					/*
					 * obtener el tamaño orogina y calcular el tamaño de la nueva
					 **/
					$orig_x = imagesx($orig);
					$orig_y = imagesy($orig);
					$thumb_x = 100; //el ancho maximo
					$thumb_y = round(($orig_y * $thumb_x) / $orig_x);
		
					/*
					 * crear la imagen original
					 */
					$thumb = imagecreatetruecolor($thumb_x, $thumb_y);
					imagecopyresampled($thumb, $orig, 0, 0, 0, 0, $thumb_x, $thumb_y, $orig_x, $orig_y);
		
					/*
					 * escribir el archivo en el servidor
					 */
					imagepng($thumb, $ruta);
				}
		    }
		}
	}
	
	$fecha = "$anio/$mes/$dia";
    $database->setQuery("insert into jos_directorio(nombre, apellidos, cedula, fechanacimiento, ciudad, telefono, celular, direccion, email, telefonooficina, curso, fechacurso, institucion, foto, aprobado) values('$nombre', '$apellidos', '$cedula', '$fecha', '$ciudad', '$telefono', '$celular', '$direccion', '$email', '$oficina', '$curso', '$fechacurso', '$institucion', '$ruta', false)");
    if (!$database->query()) {
    	echo "<script> alert('".$database->getErrorMsg()."'); window.history.go(-1); </script>\n";
    }
    
    
    global $mosConfig_sitename, $mosConfig_livesite;
	global $mosConfig_mailfrom, $mosConfig_fromname;
    
	$subject = "[$mosConfig_sitename] Nuevos datos en el directorio";
	
	$host = $GLOBALS['HOST'];
	$message  = "$nombre $apellidos ha ingresado sus datos en el directorio. Es necesario que confirme los datos alli ingresados.
	
	Nombre: $nombre $apellidos
	Cedula: $cedula
	Fecha Nacimiento: $dia / $mes / $anio
	Ciudad: $ciudad
	Telefono: $telefono
	Celular: $celular
	Direccion: $direccion
	Email: $email
	Oficina: $oficina
	Curso: $curso
	Fecha Curso: $fechacurso
	Institucion: $institucion	

	Para confirmar esta peticion, ingrese al panel administrativo del sitio y visite:
	-> Componentes/Directorio/Pendientes
	";
	
    mosMail( $mosConfig_mailfrom, $mosConfig_fromname, $mosConfig_mailfrom, $subject, $message);
    echo "<center><b>Sus datos han sido guardados. Pronto el administrador revisar&aacute; sus datos para aprobarlo</b></center>";

}

function doListar(){

	global $database;

	
	if($_GET['letra'] == ""){
		$seleccion = "a";
	}else{
		$seleccion = mysql_real_escape_string($_GET['letra']);
	}

    $database->setQuery("SELECT * FROM jos_directorio where aprobado = true and apellidos like '$seleccion%' order by apellidos desc");
    $rows = $database->loadObjectList();
    
    echo "<div class='listadofront'";
	echo "<h1>Lista de usuarios</h1>";
	
	$itemid = $_GET['Itemid']; 
	
	foreach( range( 'a', 'z' ) as $letra ) {
		$dir = "index.php?option=com_directorio&Itemid=$itemid&letra=$letra";
		if($letra == $seleccion){
	      	echo "<a href=$dir> <span style='color:red; font-size: 20px;'> $letra </span></a>|";
		}else{
			echo "<a href=$dir> $letra </a>|";
		}
	}  
    for($i=0; $i < count( $rows ); $i++) {
	    $row = $rows[$i];
	    echo "<p>" . tablaUsuario($row, foto($row->foto), "lista") . "</p>";
    }
    echo "</div>";
}


function tablaUsuario($usuario, $foto, $anterior, $mostraraprobado=false){
    
	if($mostraraprobado==true)
		$aprobado="<a href='?option=com_directorio&act=aprobar&id=$usuario->id&anterior=$anterior'>Aprobar</a>";

	$retorno = "
  <table width='100%' class='listado'>
  <tbody>
    <tr>
      <td rowspan='6' style='text-align: center;' width='100px'><img src= '$foto'/></td>
      <td class='etiqueta'>Nombre:</td>
      <td class='valor'><b>$usuario->nombre $usuario->apellidos</b></td>
    </tr>
    <tr>
      <td class='etiqueta'>Email:</td>
      <td class='valor'>$usuario->email</td>
    </tr>
    <tr>
      <td class='etiqueta'>Ciudad:</td>
      <td class='valor'>$usuario->ciudad</td>
    </tr>
    <tr>
      <td class='etiqueta'>Curso:</td>
      <td class='valor'>$usuario->curso</td>
    </tr>
    <tr>
      <td class='etiqueta'>Fecha Curso:</td>
      <td class='valor'>$usuario->fechacurso</td>
    </tr>
    <tr>
      <td class='etiqueta'>Institucion:</td>
      <td class='valor'>$usuario->institucion</td>
    </tr>
  </tbody>
  </table>
    ";
    return $retorno;
}

function foto($f){
    if($f == "")
    	$foto = "components/com_directorio/images/anonimo.gif";
    else
    	$foto = "$f";

	return $foto;   
}

?>